home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / PROBLEMS / BENCHMARK / BUBBLESORT / bubbletest / AnsiC / c / source
C/C++ Source or Header  |  1992-06-12  |  1KB  |  66 lines

  1. /*       bubbletest source file          */
  2. /*                                       */  
  3. /*   compiled using Acorn C Release 4    */
  4. /*                                       */
  5.  
  6. #include <stdio.h>
  7. #define BOOL int
  8. #define TRUE 1
  9. #define FALSE 0
  10. #define length 1000
  11.  
  12. void init_array(void);
  13. void bubblesort(void);
  14. void print_array(void);
  15.  
  16. int array[length];
  17.  
  18. int main()
  19. {
  20.   init_array();
  21.   print_array();
  22.   system("time");
  23.   bubblesort();
  24.   system("time");
  25.   print_array();
  26. }
  27.  
  28. void init_array()
  29. {
  30.   int count;
  31.   int pseudorandom=123456;
  32.   for (count=0;count<length;count++)
  33.   {
  34.     pseudorandom=(pseudorandom + 234567) % 567 + 345;
  35.     array[count]=pseudorandom;
  36.   }
  37. }
  38.  
  39. void bubblesort()
  40. {
  41.   int count,temp;
  42.   BOOL sorted;
  43.   do
  44.   {
  45.     sorted=TRUE;
  46.     for (count=0;count<length-1;count++)
  47.     {
  48.       if (array[count]>array[count+1])
  49.       {
  50.         temp=array[count]; array[count]=array[count+1];
  51.         array[count+1]=temp; sorted=FALSE;
  52.       }
  53.     }
  54.   }
  55.   while (!sorted);
  56. }
  57.  
  58. void print_array()
  59. {
  60.   int i;
  61.   for (i=0;i<1000;i++)
  62.   {
  63.     printf("%d\n",array[i]);
  64.   }
  65. }
  66.